Skip to content

fix(telemetry-processor): Clarify push-based vs pull-based#16653

Open
philipphofmann wants to merge 5 commits intoref/telemetry-processor-dedupe-archfrom
ref/telemetry-processor-push-pull-docs
Open

fix(telemetry-processor): Clarify push-based vs pull-based#16653
philipphofmann wants to merge 5 commits intoref/telemetry-processor-dedupe-archfrom
ref/telemetry-processor-push-pull-docs

Conversation

@philipphofmann
Copy link
Member

@philipphofmann philipphofmann commented Mar 3, 2026

DESCRIBE YOUR PR

Based on #16652. Part of #16189.

Clarifies the difference between the push-based and pull-based telemetry buffer approaches and adds cross-links between them.

Co-Authored-By: Claude noreply@anthropic.com

IS YOUR CHANGE URGENT?

Help us prioritize incoming PRs by letting us know when the change needs to go live.

  • Urgent deadline (GA date, etc.):
  • Other deadline:
  • None: Not urgent, can wait up to 1 week+

SLA

  • Teamwork makes the dream work, so please add a reviewer to your PRs.
  • Please give the docs team up to 1 week to review your PR unless you've added an urgent due date to it.
    Thanks in advance for your help!

PRE-MERGE CHECKLIST

Make sure you've checked the following before merging your changes:

  • Checked Vercel preview for correctness, including links
  • PR was reviewed and approved by any necessary SMEs (subject matter experts)
  • PR was reviewed and approved by a member of the Sentry docs team

… approach

Co-Authored-By: Claude <noreply@anthropic.com>
@vercel
Copy link

vercel bot commented Mar 3, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
develop-docs Ready Ready Preview, Comment Mar 5, 2026 7:58am
1 Skipped Deployment
Project Deployment Actions Updated (UTC)
sentry-docs Ignored Ignored Preview Mar 5, 2026 7:58am

Request Review

philipphofmann and others added 2 commits March 3, 2026 12:00
Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Claude <noreply@anthropic.com>
@philipphofmann philipphofmann marked this pull request as ready for review March 3, 2026 11:04
@philipphofmann philipphofmann changed the title docs(develop-docs): Clarify push-based vs pull-based telemetry buffer approach fix(telemetry-processor): Clarify push-based vs pull-based telemetry buffer approach Mar 3, 2026
@philipphofmann philipphofmann changed the title fix(telemetry-processor): Clarify push-based vs pull-based telemetry buffer approach fix(telemetry-processor): Clarify push-based vs pull-based Mar 3, 2026
Copy link
Collaborator

@giortzisg giortzisg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, left some minor comments


## Push-Based Approach

SDKs **SHOULD** use the push-based approach, where the telemetry buffers push data to the telemetry scheduler when full or on timeout. For high-throughput scenarios, SDKs **MAY** use a [pull-based alternative](./backend-telemetry-processor/) optimized for backends, where the scheduler pulls items from the buffers.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am torn between creating a pull-based approach section on the index page or just have it only on the backend page to avoid duplication. However even if we keep it as is, let's add a section for the pull-based approach so that this comment links to the section and not the whole page of the backend processor.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@giortzisg, I explained it here as well because it felt a bit odd to me to define the common requirements here without stating that for some approaches, they don't apply. It felt a bit odd to define it here and then, in the backend page, saying, "Hey, and by the way, these requirements in the index page don't apply here."

Just to clarify, you also want to explain a complete pull-based approach here, which would mean that we should extract the pull-based approach with all the round robin stuff from the backend? Or what exactly would you put into this section here on the index page?

#### TelemetryBuffer

The telemetry buffer on the backend must follow the common [telemetry buffer requirements](/sdk/foundations/processing/telemetry-processor/#telemetry-buffer). Here are the additional requirements for the backend-specific implementation:
Unlike the [push-based approach](/sdk/foundations/processing/telemetry-processor/#push-based-approach), the telemetry buffer does not push data to the telemetry scheduler. Instead, the [telemetry scheduler](#telemetryscheduler) iterates through all buffers using weighted round-robin and pulls data when it determines a buffer is ready to flush. Still, the telemetry buffer **MUST** follow the common [telemetry buffer requirements](/sdk/foundations/processing/telemetry-processor/#telemetry-buffer). Here are the additional backend-specific requirements:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Unlike the [push-based approach](/sdk/foundations/processing/telemetry-processor/#push-based-approach), the telemetry buffer does not push data to the telemetry scheduler. Instead, the [telemetry scheduler](#telemetryscheduler) iterates through all buffers using weighted round-robin and pulls data when it determines a buffer is ready to flush. Still, the telemetry buffer **MUST** follow the common [telemetry buffer requirements](/sdk/foundations/processing/telemetry-processor/#telemetry-buffer). Here are the additional backend-specific requirements:
Unlike the [push-based approach](/sdk/foundations/processing/telemetry-processor/#push-based-approach), the telemetry buffer does not push data to the telemetry scheduler. Instead, the [telemetry scheduler](#telemetryscheduler) iterates through all buffers using weighted round-robin scheduling and pulls data when it determines a buffer is ready to flush. Still, the telemetry buffer **MUST** follow the common [telemetry buffer requirements](/sdk/foundations/processing/telemetry-processor/#telemetry-buffer). Here are the additional backend-specific requirements:

Copy link
Contributor

@coolguyzone coolguyzone left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

…ckend-telemetry-processor.mdx

Co-authored-by: Giannis Gkiortzis <58184179+giortzisg@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants